package com.swxy.club.dto.Vo;

import com.fasterxml.jackson.annotation.JsonFormat;
import com.fasterxml.jackson.databind.annotation.JsonSerialize;
import com.swxy.club.enums.AuditStatus;
import com.swxy.club.serializer.EnumFlatSerializer;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import java.time.LocalDateTime;

@Data
@ApiModel(value = "社团审批信息VO")
public class ClubApprovalDetailVO {

    @ApiModelProperty(value = "申请ID")
    private Integer id;

    @ApiModelProperty(value = "社团ID")
    private Long clubId;

    @ApiModelProperty(value = "社团名称")
    private String clubName;

    @ApiModelProperty(value = "申请人ID")
    private Long userId;

    @ApiModelProperty(value = "申请人姓名")
    private String applicantName;

    @ApiModelProperty(value = "申请理由")
    private String applyReason;
    @JsonSerialize(using = EnumFlatSerializer.class)
    @ApiModelProperty(value = "申请状态")
    private AuditStatus status;

    @ApiModelProperty(value = "拒绝原因")
    private String refuseReason;

    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @ApiModelProperty(value = "申请时间")
    private LocalDateTime applyTime;

    @ApiModelProperty(value = "处理人ID")
    private Long operateId;

    @ApiModelProperty(value = "处理人姓名")
    private String operatorName;

    @ApiModelProperty(value = "处理时间")
    private LocalDateTime operateTime;
}